Application function control of IP address allocation

ABSTRACT

In accordance with various embodiments, a method is performed including establishing a first communication session between an application function and a user equipment assigned a first IP address. The method includes determining, by the application function, that the user equipment has changed location. The method includes, in response to determining that the user equipment has changed location, sending, by the application function, a request that the user equipment be assigned a second IP address. The method includes establishing a second communication session between the application function and the user equipment assigned the second IP address.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority to U.S. Provisional Patent App. No.62/673,088, filed on May 17, 2018, entitled “Application FunctionControl of IP Address Allocation,” and hereby incorporated by referencein its entirety.

TECHNICAL FIELD

The present disclosure generally relates generally to network IP addressallocation, and in particular, to network IP address allocation by anapplication function (AF).

BACKGROUND

In various mobile networks, the IP address of a user equipment (UE) maybe changed during the registration period of the UE. Three modes ofoperation have been defined:

-   -   (1) SSC Mode 1: The IP address of the UE does not change during        registration period.    -   (2) SSC Mode 2: The IP address of the UE may be changed. A new        IP connection (e.g., PDU session corresponding to new IP        address) is created after the previous/existing IP connection        (PDU session corresponding to an older IP address) of the UE is        removed.    -   (3) SSC Mode 3: The IP address of the UE may be changed. A new        IP connection is created before the previous/existing IP        connection of the UE is removed.

BRIEF DESCRIPTION OF THE DRAWINGS

For a better understanding of aspects of the various embodimentsdescribed herein and to show more clearly how they may be carried intoeffect, reference is made, by way of example only, to the accompanyingdrawings.

FIG. 1A is a block diagram of a network environment at a first time inaccordance with some embodiments.

FIG. 1B is a block diagram of the network environment of FIG. 1A at asecond time in accordance with some embodiments.

FIG. 1C is a block diagram of the network environment of FIG. 1A at athird time in accordance with some embodiments.

FIG. 1D is a block diagram of the network environment of FIG. 1A at afourth time in accordance with some embodiments.

FIGS. 2A-2B illustrate an example signaling diagram described withrespect to FIGS. 1A-1D.

FIG. 3 is a flowchart representation of a method of establishing acommunication session in accordance with some embodiments.

FIG. 4 is a block diagram of an example device in accordance with someembodiments.

In accordance with common practice the various features illustrated inthe drawings may not be drawn to scale. Accordingly, the dimensions ofthe various features may be arbitrarily expanded or reduced for clarity.In addition, some of the drawings may not depict all of the componentsof a given system, method or device. Finally, like reference numeralsmay be used to denote like features throughout the specification andfigures.

DESCRIPTION OF EXAMPLE EMBODIMENTS

Numerous details are described in order to provide a thoroughunderstanding of the example embodiments shown in the drawings. However,the drawings merely show some example aspects of the present disclosureand are therefore not to be considered limiting. Those of ordinary skillin the art will appreciate that other effective aspects and/or variantsdo not include all of the specific details described herein. Moreover,well-known systems, methods, components, devices and circuits have notbeen described in exhaustive detail so as not to obscure more pertinentaspects of the example embodiments described herein.

Overview

Various embodiments disclosed herein include devices, systems, andmethods for establishing a communication session. The method includesestablishing a first communication session between an applicationfunction (AF) and a user equipment (UE) assigned a first IP address. Themethod includes determining, by the AF, that the UE has changedlocation. The method includes, in response to determining that the UEhas changed location, sending, by the AF, a request that the UE beassigned a second IP address. The method includes establishing a secondcommunication session between the AF and the UE assigned the second IPaddress.

In accordance with some embodiments, a device includes one or moreprocessors, a non-transitory memory, and one or more programs; the oneor more programs are stored in the non-transitory memory and configuredto be executed by the one or more processors and the one or moreprograms include instructions for performing or causing performance ofany of the methods described herein. In accordance with someembodiments, a non-transitory computer readable storage medium hasstored therein instructions, which, when executed by one or moreprocessors of a device, cause the device to perform or cause performanceof any of the methods described herein. In accordance with someembodiments, a device includes: one or more processors, a non-transitorymemory, and means for performing or causing performance of any of themethods described herein.

EXAMPLE EMBODIMENTS

Whereas the IP address of a user equipment (UE) can be changed duringthe registration period, in various implementations, an applicationfunction (AF) controls when the IP address of the UE is changed. Invarious implementations, the IP address of a UE may be changed based onstatic triggers in the SMF (session management function), e.g., when theUE has moved “far” from the serving UPF (user plane function) and thereis another UPF closer to the UE). However, for multi-access edgecomputing (MEC), the AF with which the user is communicating with may bebetter aware of to the geographic location data or compute resources arecached which can be used by the UE and, thus, can better control whenthe IP address of the UE should be changed to access the local cache.This decision can be based on geographic location of the UE and/orrequirements of the application that the UE is currently engaged in.

FIG. 1A illustrates a block diagram of a network environment 100 at afirst time in accordance with some embodiments. While pertinent featuresare shown, those of ordinary skill in the art will appreciate from thepresent disclosure that various other features have not been illustratedfor the sake of brevity and so as not to obscure more pertinent aspectsof the example embodiments disclosed herein. To that end, as anon-limiting example, the fabric network environment 100 includes a corenetwork 101. The fabric network environment 100 includes a plurality ofaccess nodes 140A-140I coupled to the core network 101. The fabricnetwork environment 100 includes a user equipment (UE) 190 associatedwith a first access node 140A of the plurality of access nodes140A-140I. In various implementations, the core network 101 is a 5Gnetwork. In various implementations, the access nodes 140A-140I aregNodeBs. In various implementations, the UE 190 is a smartphone, atablet, a laptop, or other portable electronic device.

The core network 101 includes a central data center 130 and a pluralityof edge data centers 110A-110C interconnected by a networkinfrastructure 120. The network infrastructure 120 including one or moreinterconnected intermediate nodes (e.g., switches or routers) thatcouple the central data center 130 and the plurality of edge datacenters 110A-110C. In various implementations, the plurality of accessnodes 140A-140I are also interconnected by the network infrastructure120 to each other, the central data center 130, and the plurality ofedge data centers 110A-110C.

The central data center 130 includes computer resources that implement anumber of network functions. The network functions include an access andmobility management function (AMF) 138 that performs, among otherthings, registration management, connection management, mobilitymanagement, access authentication and authorization, and securitycontext management. The network functions include a session managementfunction (SMF) 134 that performs, among other things, session management(session establishment, modification, release), user equipment IPaddress allocation & management, DHCP functions, DL data notification,and traffic steering configuration for proper traffic routing. Thenetwork functions include a policy control function (PCF) 136 thatperforms, among other things, providing a unified policy framework,providing policy rules to control plane functions, and accesssubscription information for policy decisions. The network functionsinclude a central user plane function (UPF-C) 132 that performs, amongother things, packet routing and forwarding, packet inspection, QoShandling, and is an anchor point for intra- and inter-RAT mobility. Thenetwork functions include a central application function (AF-C) 139 thatperforms, among other things, influencing traffic routing, accessingNEF, and interaction with policy framework for policy control. The AF-C139 is associated with an application providing content or services tothe UE 190. For example, in various implementations, the AF-C 139 isassociated with a video streaming service that provides video content tothe UE 190.

A first edge data center 110A of the plurality of edge data centers110A-110C includes computing resources that implement a first edge userplane function (UPF-1) 112A and a first edge application function (AF-1)119A. In association with the AF-1 119A, the first edge data center 110Aincludes computing resources for the application to provide content orservices to the UE 190. For example, in various implementations, thefirst edge data center 110A includes caches of video content. A secondedge data center 110B of the plurality of edge data centers 110A-110Cincludes computing resources that implement a second edge user planefunction (UPF-2) 112B and a second edge application function (AF-2)119B. In association with the AF-2 119B, the second edge data center110B includes computing resources for the application to provide contentor services to the UE 190. A third edge data center 110C of theplurality of edge data centers 110A-110C includes computing resourcesthat implement a third edge user plane function (UPF-3) 112C. However,the third edge data center 110C does not implement an edge AF or includecomputing resources for providing the application.

In the central data center 130, the AF-C 139 communicates with the PCF136 via an N5 interface. The SMF 134 communicates with the PCF 136 viaan N7 interface and with the AMF 138 via an N11 interface. The SMF 134communicates with the UPF-C 132 via an N4 interface. Similarly, the SMF134 communicates with the UPF-1 112A, UPF-2 112B, and the UPF-3 112C viaan N4 interface.

In various implementations, the central data center 130 includescomputing resources geographically distributed in a cloud formation.However, in various implementations, the central data center 130 is alsolocated at a discrete geographic location.

Each of the plurality of edge data centers 110A-110C includes computingresources at a discrete geographic location. Similarly, each of theaccess nodes 140A-140I are located at respective discrete geographiclocations. In various implementations, one or more of the access nodes140A-140I includes multiple cell sites (e.g., using cloud principles).Nevertheless, each of the access node 140A-140I is associated with arespective geographic location (which may be larger than a singlepoint). Accordingly, a particular access node may be close to one edgedata center and far from another edge data center. Thus, the userexperience (e.g., latency, loss, available bandwidth, etc.) of a UEusing the computing resources of different ones of the plurality of edgedata centers 110A-110C (or the computing resources of the central datacenter 130) may differ depending on the location of the access node withwhich the user equipment 190 is associated.

Various ones of the plurality of access nodes 140A-140I are grouped intogroups based on their geographic location. For example, the secondaccess node 140B and third access node 140C are grouped into a firstgroup 141A, the fourth access node 140D is grouped into a second group141B, the fifth access node 140E and the sixth access node 140F aregrouped into a third group 141C, and the seventh access node 140G,eighth access node 140H, and ninth access node 140I are grouped into afourth group 141D. Further, one or more groups of access nodes can befurther grouped into supergroups. In various implementations, each groupof access nodes 141A-141D is associated with a group identifier, e.g., atracking area identity (TAI). Similarly, each edge data center 110A-110Cis associated with an edge data center identifier, e.g., a data networkaccess identifier (DNAI).

Because the user experience of a UE using the computing resources ofdifferent ones of the plurality of edge data centers 110A-110C (or thecomputing resources of the central data center 130) may differ dependingon the location of the access node with which the UE 190 is associated,when the UE 190 is associated with an access node close to an edge datacenter including computing resources to provide and application, it isdesirable that the UE 190 access those computing resources rather thancomputing resources of another edge data center or the central datacenter. Accordingly, in various implementations, when such circumstancesare detected, the IP address of the UE 190 is changed, causing the UE190 to connect to the network via the user plane function of that edgedata center.

To that end, the AF-C 139 sends, via the N5 interface to the PCF 136, arequest for a notification when the user equipment 190 changes location.In various implementations, the request includes one or more presencereporting areas (PRAs) that each specify one or more access nodes (e.g.,by reference to group identifiers or access node identifiers). Inresponse, the PCF 136 sends a similar request to the SMF 134 via the N7interface. Further, the SMF 134 sends a similar request to the AMF 138via the N11 interface.

When the user equipment 190 associates with an access node specified byone or more of the PRAs, the AMF 138 sends, via the N11 interface to theSMF 134, a notification that the UE 190 has changed location. Inresponse, the SMF 134 sends, via the N7 interface to the PCF 136, anotification that the UE 190 has changed location. Further, the PCF 136sends, via the N5 interface to the AF-C 139, a notification that the UE190 has changed location. In particular, the AF-C 139 receives anotification that the UE 190 has associated with a specified accessnode. In response, the AF-C 139 sends, via the N5 interface to the PCF136, a request that the UE 190 be assigned a new IP address. Inresponse, the PCF 136 sends a similar request to the SMF 134 via the N7interface.

Then, the SMF 134 assigns the UE 190 a new IP address allowing the UE190 to communicate via the UPF of the close edge data center includingcomputing resources for providing the application, thereby improving theuser experience.

FIG. 1B illustrates the network environment 100 of FIG. 1A at a secondtime in accordance with some implementations. As compared to FIG. 1A inwhich the UE 190 is associated with the first access node 140A, in FIG.1B, the UE 190 is associated with the third access node 140B.

FIG. 1C illustrates the network environment 100 of FIG. 1A at a thirdtime in accordance with some implementations. In FIG. 1C, the UE 190 isassociated with the sixth access node 140F.

FIG. 1D illustrates the network environment 100 of FIG. 1A at a fourthtime in accordance with some implementations. In FIG. 1D, the UE 190 isassociated with the ninth access node 140I.

FIGS. 2A-2B illustrate an example signaling diagram described withrespect to FIGS. 1A-1D. FIGS. 2A-2B illustrates various signals betweenthe UE 190, the first access node 140A, the third access node 140C, thesixth access node 140F, the ninth access node 140I, the AMF 138, the SMF134, the PCF 136, and an AF 199 embodied by AF-C 139, AF-1 119A, andAF-2 119B. Those of ordinary skill in the art will appreciate thatadditional signals (e.g., acknowledgments and intermediate signaling)can be sent and transmitted but are omitted for the sake of clarity.

Referring to FIG. 2A, at the first time of FIG. 1A, the UE 190associates 202 with the first access node 140A. Further, the UE 190sends, via the first access node 140A, a PDU session establishmentrequest 204 to the SMF 134. The PDU session establishment request 204includes an indication that the SSC Mode is 2 or 3, thereby indicatingthat an IP address change can be handled by the UE 190. At this state,the IP traffic of the UE 199 flows via UPF-C 132. The SMF 134 sends aPCC session establishment request 206 to the PCF 136 that establishes afirst communication session for the UE 190 by assigning a first IPaddress to the UE 190. Further, the PCC session establishment request206 includes an indication that the SSC Mode is 2 or 3. Thus, the PCF136 is informed of the first IP address of the UE 190 and the SSC Modeof the PDU session of the UE 190.

With the first communication session established, the UE 190communicates 208 with the AF-C 139 (via UPF-C 132) whereby the AF-C 139provides an application to the UE 190. Accordingly, a firstcommunication session is established between the AF 199 and the UE 190assigned the first IP address.

In response to establishment of the first communication session betweenthe AF 199 and the UE 190, the AF-C 139 and the PCF 136 exchange N5interface establishment communications 210 (e.g., a request and aresponse) to establish an N5 interface between the AF-C 139 and the PCF136. Via the established N5 interface, the AF-C 139 sends, to the PCF136, a location update subscribe 212 which constitutes a request for anotification when the UE 190 changes location. With reference to FIGS.1A-1D, the location update subscribe 212 includes a first presencereporting area (PRA) specifying the second access node 140B, the thirdaccess node 140C, and the fourth access node 140D (either by referenceto the access nodes 140B-140D or their groups 141A-141B) and thelocation update subscribe 212 includes a second PRA specifying theseventh access node 140G, the eighth access node 140H, and the ninthaccess node 140I (either by reference to the access nodes 140G-140I ortheir group 141D).

In response to receiving the location update subscribe 212, the PCF 136sends, to the SMF 134, a location update subscribe 214 indicating thefirst PRA and the second PRA. Further, the SMF 134 sends a locationupdate subscribe 216 to the AMF 138.

At the second time of FIG. 1B, the UE 190 associates 222 with the thirdaccess node 140C. In response to associating with the third access node140C, the UE 190 sends, to the AMF 138, a registration update 224indicating that the UE 190 has changed association to the third accessnode 140C. Because the AMF 138 received the location update subscribe216 indicating the third access node 140C and the registration update224 indicating the third access node 140C (e.g., the specified accessnodes match), the AMF 138 sends a location update 226 to the SMF 134.Similarly, because the SMF 134 received the location update subscribe214 indicating the third access node 140C and the location update 226indicating the third access node 140C, the SMF 134 sends a locationupdate 228 to the PCF. Further, because the PCF 136 received thelocation update subscribe 212 indicating the third access node 140C andthe location update 228 indicating the third access node 140C, the PCF136 sends a location update 230 to the AF-C 139. Thus, the AF 199determines that the UE 190 has changed location. In particular, the AF199 determines that the UE 190 has changed location by sending a requestfor a notification when the UE 190 changes location in the form of thelocation update subscribe 212 and receiving a notification that the UE190 has changed location in the form of the location update 230.

In response to determining that the UE 190 has changed location, theAF-C 139 sends, via the N5 interface to the PCF 136, an IP changerequest 232. In response, because the SSC Mode is 2 or 3, the PCF 136sends an IP change request 234 to the SMF 134.

In response to receiving the IP change request 234, the SMF 134 sends,to the UE 190, a session delete command 236. In some embodiments, thesession delete command 236 disestablishes the first communicationsession. In some embodiments, the session delete command 236 sets adelayed-release time after which the first communication session isdisestablished.

In response to the session delete command 236, the UE 190 sends, via thethird access node 140C, a PDU session establishment request 238 to theSMF 134. The SMF 134 sends a PCC session establishment 240 to the PCF136 that establishes a second communication session for the UE 190 byassigning a second IP address to the UE 190. At this state, the IPtraffic of the UE 199 flows via UPF-1 112A.

In some embodiments, the session delete command 236 disestablishes a PDUsession (e.g., between the UE 190 and the SMF 134), but does notdisestablish a PCC session or AF session (e.g., between the UE 190 and,ultimately, the AF 199). Thus, rather than sending a PCC sessionestablishment 240 to the PCF 136, the SMF 134 sends a PCC modificationrequest to the PCF 136 that establishes the second communication sessionby modifying the first communication session (to indicate the second IPaddress rather than the first IP address).

With the second communication session established, the UE 190communicates 242 with the AF-1 119A (via UPF-1 112A) whereby the AF-1119A provides the application to the UE 190. Accordingly, a secondcommunication session is established between the AF 199 and the UE 190assigned the second IP address.

Referring to FIG. 2B, at the third time of FIG. 1C, the UE 190associates 252 with the ninth access node 140I. In response toassociating with the ninth access node 140I, the UE 190 sends, to theAMF 138, a registration update 264 indicating that the UE 190 haschanged association to the ninth access node 140C.

Because the AMF 138 received the location update subscribe 216indicating the ninth access node 140I and the registration update 264indicating the ninth access node 140I, the AMF 138 sends a locationupdate 266 to the SMF 134. Similarly, because the SMF 134 received thelocation update subscribe 214 indicating the ninth access node 140I andthe location update 266 indicating the ninth access node 140I, the SMF134 sends a location update 268 to the PCF. Further, because the PCF 136received the location update subscribe 212 indicating the ninth accessnode 140I and the location update 268 indicating the ninth access node140I, the PCF 136 sends a location update 270 to the AF-C 139. Thus, theAF 199 determines that the UE 190 has changed location. In particular,the AF 199 determines that the UE 190 has changed location by sending arequest for a notification when the UE 190 changes location in the formof the location update subscribe 212 and receiving a notification thatthe UE 190 has changed location in the form of the location update 270.

In response to determining that the UE 190 has changed location, theAF-C 139 sends, via the N5 interface to the PCF 136, an IP changerequest 272. In response, the PCF 136 sends an IP change request 274 tothe SMF 134.

In response to receiving the IP change request 274, the SMF 134 sends,to the UE 190, a session delete command 276. In some embodiments, thesession delete command 276 disestablishes the first communicationsession. In some embodiments, the session delete command 276 sets adelayed-release time after which the first communication session isdisestablished.

In response to the session delete command 276, the UE 190 sends, via theninth access node 140I, a session establishment request 278 to the SMF134. The SMF 134 sends a session establishment 280 to the PCF 136 thatestablishes a third communication session for the UE 190 by assigning athird IP address to the UE 190. At this state, the IP traffic of the UE199 flows via UPF-2 112B.

With the third communication session established, the UE 190communicates 282 with the AF-2 119B (via UPF-2 112B) whereby the AF-2119B provides the application to the UE 190. Accordingly, a thirdcommunication session is established between the AF 199 and the UE 190assigned the third IP address.

FIG. 3 is a flowchart representation of a method 300 of establishing acommunication session in accordance with some embodiments. In someembodiments (and as detailed below as an example), the method 300 isperformed by a central data center, such the central data center 130 ofFIG. 1A, or a portion thereof (such as the application function 199 orAF-C 139 of FIG. 2). In some embodiments, the method 300 is performed byprocessing logic, including hardware, firmware, software, or acombination thereof. In some embodiments, the method 300 is performed bya processor executing code stored in a non-transitory computer-readablemedium (e.g., a memory). Briefly, the method 300 includes establishing afirst communication session between an application function (AF) and auser equipment (UE) assigned a first IP address and, in response to theUE changing location, establishing a second communication sessionbetween the AF and the UE assigned a second IP address.

The method 300 begins, in block 310, with the central data centerestablishing a first communication session between an AF and a UEassigned a first IP address. For example, in FIG. 2A, establishing thefirst communication session includes receiving, by the SMF 134 from theUE 190, a PDU session establishment request 204. As another example, inFIG. 2A, establishing the first communication session includesreceiving, by the PCF 136 from the SMF 134, a PCC session establishmentrequest 206.

In various implementations, establishing the first communication sessionincludes receiving a session establishment request including anindication of an SCC Mode in which the UE IP address can be changed. Invarious implementations, the indication of the SSC Mode is received by asession management function (SMF) and forwarded to a policy managementfunction (PCF). For example, in FIG. 2A, the PDU session establishmentrequest 204 (including an indication of either SSC Mode 2 or 3) isreceived by the SMF 134 and the indication is forwarded to the PCF 136in the PCC session establishment request 206.

The method 300 continues, in block 320, with the AF determining that theuser equipment has changed location. In various implementations,determining, by the AF, that the UE has changed location comprisessending, by the AF, a request for a notification when the UE changeslocation and receiving, by the AF, a notification that the UE haschanged location. For example, in FIG. 2A, the AF 199 sends the locationupdate subscribe 212 and receives the location update 230. In someembodiments, the request for a notification and the notification aretransmitted via an N5 interface. For example, in FIG. 2A, the AF 199 andthe PCF 136 exchange N5 establishment communications 210 to establish anN5 interface via which the location update subscribe 212 and locationupdate 230 are transmitted. In various implementations, the method 300is performed in an Evolved Packet Core (EPC) implementation. Thus, insome embodiments, the request for a notification and the notificationare transmitted via an Rx interface.

In some embodiments, determining, by the AF, that the UE has changedlocation comprises determining, by the AF, that the UE has entered apredefined geographical location. For example, in FIG. 2A, the locationupdate 230 is received in response to the UE 190 associating with anaccess node (e.g., the third access node 130C) specified by the locationupdate subscribe 212 and the UE 190 is, therefore, within a predefinedgeographical location associated with the third access node 130C. Forexample, in some embodiments, the AF determines that the UE has changedlocation by inspecting an access node identifier of an access nodeincluded in a header of a packet transmitted by the UE and correlatingthe access node identifier with the geographical location of the accessnode. In some embodiments, the AF determines that the UE has changedlocation by receiving GPS coordinates of the UE, which may be includedin a header of packet transmitted by the UE.

The method 300 continues, at block 330, with the AF, in response todetermining that the UE has changed location, sending a request that theUE be assigned a second IP address. For example, in FIG. 2A, in responseto receiving the location update 230, the application function 199 sendsthe IP change request 232.

In some embodiments, the method further includes determining, by the AF,that the UE is to be assigned the second IP address based on a currentlocation of the UE and one or more locations of application functionresources. Further, in some embodiments, the AF requests that the UE beassigned a second IP address (in block 330) in response to determiningthat the UE is to be assigned the second IP address. For example, withrespect to FIG. 2A, the AF 199 determines that the UE 190 is to beassigned the second IP address based on the current location of the UE190 (e.g., within the predefined geographical area of the third accessnode 140C) and locations of AF resources, such as AF-1 119A and AF-2119B.

In some embodiments, determining, by the AF, that the UE is to beassigned the second IP address includes determining that the currentlocation of the UE is close to a first one of the one or more locationsof AF resources. For example, with respect to FIG. 2A, the AF determinesthat that user equipment 190 is to be assigned the second IP addressbased on the current location of the UE 190 (e.g., within the predefinedgeographical area of the third access node 140C) being close to the AFresources of the AF-1 119A.

In some embodiments, the request that the UE be assigned a second IPaddress (sent by the AF in block 330) includes an indication of aparticular network segment. For example, with respect to FIG. 2A, insome embodiments, the IP change request 232 includes an indication ofthe first edge data center 110A to which the current location of theuser equipment 130 is proximate.

The method 300 continues, in block 340, with the central data centerestablishing a second communication session between the AF and the UEassigned the second IP address. For example, in FIG. 2A, establishingthe first communication session includes receiving, by the SMF 134 fromthe UE 190, a PDU session establishment request 238. As another example,in FIG. 2A, establishing the first communication session includesreceiving, by the PCF 136 from the SMF 134, a PCC session establishmentrequest 240.

In some embodiments, the method 300 further includes disestablishing thefirst communication session. For example, in FIG. 2A, the SMF 134 sendsthe session delete command 236. In some embodiments, the firstcommunication session is disestablished before the second communicationsession is established (e.g., the session delete command 236disestablishes the first communication session. In some embodiments, thefirst communication session is disestablished after the secondcommunication session is established (e.g., the session delete command236 indicates a delayed-release time after which the first communicationsession is disestablished and the second communication session isestablished before the delayed-release time expires).

In some embodiments, establishing the second communication sessionincludes modifying the first communication session. For example,referring to FIG. 2A, in some embodiments, the session delete command236 disestablishes a PDU session (e.g., between the UE 190 and the SMF134), but does not disestablish a PCC session or AF session (e.g.,between the UE 190 and, ultimately, the AF 199). Thus, rather thansending a PCC session establishment 240 to the PCF 136, the SMF 134sends a PCC modification request to the PCF 136 that establishes thesecond communication session by modifying the first communicationsession (to indicate the second IP address rather than the first IPaddress).

FIG. 4 is a block diagram of an example device 400 in accordance withsome embodiments. In some embodiments, the device corresponds to thecentral data center 130 of FIG. 1 or portions thereof and performs oneor more of the functionalities described above with respect to thosesystems. While certain specific features are illustrated, those skilledin the art will appreciate from the present disclosure that variousother features have not been illustrated for the sake of brevity, and soas not to obscure more pertinent aspects of the embodiments disclosedherein. To that end, as a non-limiting example, in some embodiments, thedevice 400 includes one or more processing units (CPU(s)) 402 (e.g.,processors), one or more output interfaces 403 (e.g., a networkinterface), a memory 410, a programming interface 405, and one or morecommunication buses 404 for interconnecting these and various othercomponents.

In some embodiments, the communication buses 404 include circuitry thatinterconnects and controls communications between system components. Thememory 410 includes high-speed random access memory, such as DRAM, SRAM,DDR RAM or other random access solid state memory devices; and, in someembodiments, include non-volatile memory, such as one or more magneticdisk storage devices, optical disk storage devices, flash memorydevices, or other non-volatile solid state storage devices. The memory410 optionally includes one or more storage devices remotely locatedfrom the CPU(s) 402. The memory 410 comprises a non-transitory computerreadable storage medium. Moreover, in some embodiments, the memory 410or the non-transitory computer readable storage medium of the memory 410stores the following programs, modules and data structures, or a subsetthereof including an optional operating system 420, a sessionestablishment module 431, a UE location module 432, and an IP changemodule 433. In some embodiments, one or more instructions are includedin a combination of logic and non-transitory memory. The operatingsystem 420 includes procedures for handling various basic systemservices and for performing hardware dependent tasks.

In some embodiments, the session establishment module 431 is configuredto establishing a first communication session between an applicationfunction (AF) and a user equipment (UE) assigned a first IP address. Tothat end, the reputation score module 431 includes a set of instructions431 a and heuristics and metadata 431 b.

In some embodiments, the UE location module 432 is configured todetermine, by the AF, that the UE has changed location. To that end, theUE location module 432 includes a set of instructions 432 a andheuristics and metadata 432 b.

In some embodiments, the IP change module 433 is configured in responseto determining that the UE has changed location, sending, by the AF, arequest that the UE be assigned a second IP address. To that end, the IPchange module 433 includes a set of instructions 433 a and heuristicsand metadata 433 b.

In some embodiments, the session establishment module 431 is furtherconfigured to establishing a second communication session between the AFand the UE assigned the second IP address.

Although the session establishment module 431, the UE location module432, and the IP change module 433 are illustrated as residing on asingle device 400, it should be understood that in other embodiments,any combination of the session establishment module 431, the UE locationmodule 432, and the IP change module 433 can reside in separate devices.For example, in some embodiments, each of the session establishmentmodule 431, the UE location module 432, and the IP change module 433reside in a separate device.

Moreover, FIG. 4 is intended more as functional description of thevarious features which be present in a particular embodiment as opposedto a structural schematic of the embodiments described herein. Asrecognized by those of ordinary skill in the art, items shown separatelycould be combined and some items could be separated. For example, somefunctional modules shown separately in FIG. 4 could be implemented in asingle module and the various functions of single functional blockscould be implemented by one or more functional blocks in variousembodiments. The actual number of modules and the division of particularfunctions and how features are allocated among them will vary from oneembodiment to another and, in some embodiments, depends in part on theparticular combination of hardware, software, and/or firmware chosen fora particular embodiment.

While various aspects of embodiments within the scope of the appendedclaims are described above, it should be apparent that the variousfeatures of embodiments described above may be embodied in a widevariety of forms and that any specific structure and/or functiondescribed above is merely illustrative. Based on the present disclosureone skilled in the art should appreciate that an aspect described hereinmay be implemented independently of any other aspects and that two ormore of these aspects may be combined in various ways. For example, anapparatus may be implemented and/or a method may be practiced using anynumber of the aspects set forth herein. In addition, such an apparatusmay be implemented and/or such a method may be practiced using otherstructure and/or functionality in addition to or other than one or moreof the aspects set forth herein.

It will also be understood that, although the terms “first,” “second,”etc. may be used herein to describe various elements, these elementsshould not be limited by these terms. These terms are only used todistinguish one element from another. For example, a first node could betermed a second node, and, similarly, a second node could be termed afirst node, which changing the meaning of the description, so long asall occurrences of the “first node” are renamed consistently and alloccurrences of the “second node” are renamed consistently. The firstnode and the second node are both nodes, but they are not the same node.

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of the claims. Asused in the description of the embodiments and the appended claims, thesingular forms “a,” “an,” and “the” are intended to include the pluralforms as well, unless the context clearly indicates otherwise. It willalso be understood that the term “and/or” as used herein refers to andencompasses any and all possible combinations of one or more of theassociated listed items. It will be further understood that the terms“comprises” and/or “comprising,” when used in this specification,specify the presence of stated features, integers, steps, operations,elements, and/or components, but do not preclude the presence oraddition of one or more other features, integers, steps, operations,elements, components, and/or groups thereof.

As used herein, the term “if” may be construed to mean “when” or “upon”or “in response to determining” or “in accordance with a determination”or “in response to detecting,” that a stated condition precedent istrue, depending on the context. Similarly, the phrase “if it isdetermined [that a stated condition precedent is true]” or “if [a statedcondition precedent is true]” or “when [a stated condition precedent istrue]” may be construed to mean “upon determining” or “in response todetermining” or “in accordance with a determination” or “upon detecting”or “in response to detecting” that the stated condition precedent istrue, depending on the context.

What is claimed is:
 1. A method comprising: establishing a firstcommunication session between an application function (AF) and a userequipment (UE) assigned a first Internet Protocol (IP) address;determining, by the AF, that the UE has changed location; in response todetermining that the UE has changed location, sending, by the AF, arequest that the user equipment be assigned a second IP address, whereinthe request comprises an indication of a particular network segment; andestablishing a second communication session between the AF and the UEassigned the second IP address.
 2. The method of claim 1, whereinestablishing the first communication session includes receiving asession establishment request including an indication of a Session andService Continuity (SCC) Mode in which the UE IP address can be changed.3. The method of claim 2, wherein the indication of the SSC Mode isreceived by a session management function (SMF) and forwarded to apolicy management function (PCF).
 4. The method of claim 1, whereindetermining, by the AF, that the UE has changed location comprises:sending, by the AF, a request for a notification when the UE changeslocation; and receiving, by the AF, a notification that the UE haschanged location.
 5. The method of claim 4, when the request for anotification and the notification are transmitted via an N5 interface oran Rx interface.
 6. The method of claim 1, wherein determining, by theAF, that the UE has changed location comprises determining, by the AF,that the UE has entered a predefined geographical area.
 7. The method ofclaim 1, further comprising determining, by the AF, that the UE is to beassigned the second IP address based on a current location of the UE andone or more locations of AF resources, wherein the AF requests that theUE be assigned a second IP address in response to determining that theUE is to be assigned the second IP address.
 8. The method of claim 7,wherein determining, by the AF, that the UE is to be assigned the secondIP address includes determining that the current location of the UE isclose to a first one of the one or more locations of AF resources. 9.The method of claim 1, further comprising, prior to establishing thesecond communication session, disestablishing the first communicationsession.
 10. The method of claim 1, further comprising, afterestablishing the second communication session, disestablishing the firstcommunication session.
 11. The method of claim 1, wherein establishingthe second communication session includes modifying the firstcommunication session.
 12. An electronic device comprising: a networkinterface; and one or more processors configured to: establish a firstcommunication session between an application function (AF) and a userequipment (UE) assigned a first Internet Protocol (IP) address;determine, by the AF, that the UE has changed location; in response todetermining that the UE has changed location, send, by the AF, a requestthat the UE be assigned a second IP address, wherein the requestcomprises an indication of a particular network segment; and establish asecond communication session between the AF and the UE assigned thesecond IP address.
 13. The electronic device of claim 12, whereinestablishing the first communication session includes receiving asession establishment request including an indication of a Session andService Continuity (SCC) Mode in which the UE IP address can be changed.14. The electronic device of claim 12, wherein the AF determines thatthe user equipment has changed location by: sending, by the AF, arequest for a notification when the UE changes location; and receiving,by the AF, a notification that the UE has changed location.
 15. Theelectronic device of claim 12, wherein the one or more processors areconfigured to determine, by the AF, that the UE is to be assigned thesecond IP address based on a current location of the UE and one or morelocations of AF resources, wherein the AF requests that the UE beassigned a second IP address in response to determining that the UE isto be assigned the second IP address.
 16. The electronic device of claim15, wherein the AF determines that the UE is to be assigned the secondIP address by determining that the current location of the UE is closeto a first one of the one or more locations of AF resources.
 17. Anon-transitory computer-readable medium encoding instructions which,when executed by a processor of an electronic device, causes theelectronic device to: establish a first communication session between anapplication function (AF) and a user equipment (UE) assigned a firstInternet Protocol (IP) address; determine, by the AF, that the UE haschanged location; in response to determining that the UE has changedlocation, send, by the AF, a request that the UE be assigned a second IPaddress, wherein the request comprises an indication of a particularnetwork segment; and establish a second communication session betweenthe AF and the UE assigned the second IP address.
 18. The non-transitorycomputer-readable medium of claim 17, wherein the AF determines that theuser equipment has changed location by: sending, by the AF, a requestfor a notification when the UE changes location; and receiving, by theAF, a notification that the UE has changed location.
 19. Thenon-transitory computer-readable medium of claim 17, wherein theinstructions, when executed by the processor of the electronic device,causes the electronic device to determine, by the AF, that the UE is tobe assigned the second IP address based on a current location of the UEand one or more locations of AF resources, wherein the AF requests thatthe UE be assigned a second IP address in response to determining thatthe UE is to be assigned the second IP address.
 20. The non-transitorycomputer-readable medium of claim 17 wherein determining, by the AF,that the UE has changed location comprises determining, by the AF, thatthe UE has entered a predefined geographical area.